package com.cicc.springboot.utile;

import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.cicc.springboot.entity.OrderItemEntity;
import com.cicc.springboot.entity.PurchaseOrderEntity;

import java.util.HashMap;
import java.util.Map;

/**
 * 订单信息的监听器
 *
 * @ClassName OrderDetailListener
 * @Description TODO
 * @Author 转轮王
 * @Date 2024/10/12 13:22
 * @Version 1.0
 */

public class OrderInfoListener extends AnalysisEventListener<PurchaseOrderEntity> {
    // 存储订单信息，key为订单编号，value为订单信息对象
    private Map<String, PurchaseOrderEntity> orderMap = new HashMap<>();

    // 每读取一行订单信息时调用
    @Override
    public void invoke(PurchaseOrderEntity orderInfo, AnalysisContext context) {
        // 以订单编号为key，将订单信息存储到map中
        orderMap.put(orderInfo.getOrderCode(), orderInfo);
    }

    // 解析完成后执行的方法
    @Override
    public void doAfterAllAnalysed(AnalysisContext context) {
        // 解析完成后的逻辑处理，可以根据需要在此处实现
    }

    // 获取订单信息Map的方法
    public Map<String, PurchaseOrderEntity> getOrderMap() {
        return orderMap;
    }
}
